/*
 * Título: gestHora. Aplicación web de gestión de horarios para conservatorios.
 * Alumnos:
 * - Javier Pardo Muñoz. I.T. Informática de Gestión
 * - Antonio Prior Cazorla. I.T. Informática de Gestión
 * Director: Dr. José Raúl Romero Salguero.
 *     
 *  Copyright (C) 2013 Javier Pardo Muñoz / Antonio Prior Cazorla
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

function listarCopiasBD() {

    //Se recuperan los datos del controlador
    $.getJSON("/gestHora/jsp/controllers/configurarController.jsp", "tipo=listarCopiasBD", function(data) {

        //Se añade contenido a la vista
        var newHTML = "<h3>Listado actual de copias</h3>\n\
                    <form class='formVistasNoticia'>\n\
                        <label for='buscar'>Filtrado: </label><input type='text' name='buscar' value='' id='buscar' onkeypress='return event.keyCode!=13'/><br/><br/>\n\
                    </form>\n\
                    <table class='tablaView tablaCopias rowstyle-alt paginate-10 sortable-onload-show-2r'>\n\
                    <thead>\n\
                        <tr><th class=sortable-numeric>ID</th><th class=sortable-text>Fichero</th><th class=sortable-num>Fecha</th><th>Comentario</th><th>Restaurar</th><th>Eliminar</th></tr>\n\
                    </thead>\n\
                    <tbody>";

        //Se recorren los datos obtenidos del controlador y se añaden a la tabla
        $.each(data, function(i, copia) {

            newHTML += "<tr><td>" + copia.id + "</td><td>" + copia.nombre + "</td><td>" + copia.fecha + "</td><td>" + copia.texto + "</td><td>" + 
                    "<a href=javascript:void(0); onclick=confirmarRestaurar(" + copia.id + ",'" + copia.nombre + "');><img src=/gestHora/img/restaurar.png alt=restaurar></a>" + "</td><td>" +
                    "<a href=javascript:void(0); onclick=confirmarEliminar(" + copia.id + ",'" + copia.nombre + "'); ><img src=/gestHora/img/eliminar.png alt=eliminar></a>" + "</td></tr>";

        });

        newHTML += "</tbody></table>";

        //Se imprime en la vista
        $("#tabla").html(newHTML);

        //Se crea el filtrado de la tabla
        creaFiltrado();

        //Se activan la paginación y la ordenación
        tablePaginater.init();
        fdTableSort.init();

    });

}

function listarNoticias() {

    //Se recuperan los datos del controlador
    $.getJSON("/gestHora/jsp/controllers/configurarController.jsp", "tipo=listarNoticias", function(data) {

        //Se añade contenido a la vista
        var newHTML = "<h3>Listado actual de noticias</h3>\n\
                    <form class='formVistasNoticia'>\n\
                        <label for='buscar'>Filtrado: </label><input type='text' name='buscar' value='' id='buscar' onkeypress='return event.keyCode!=13'/><br/><br/>\n\
                    </form>\n\
                    <table class='tablaView rowstyle-alt paginate-10 sortable-onload-show-2r'>\n\
                    <thead>\n\
                        <tr><th class=sortable-numeric>ID</th><th class=sortable-text>Titular</th><th class=sortable-num>Fecha</th><th>Editar</th><th>Eliminar</th></tr>\n\
                    </thead>\n\
                    <tbody>";

        //Se recorren los datos obtenidos del controlador y se añaden a la tabla
        $.each(data, function(i, noticia) {

            newHTML += "<tr><td>" + noticia.id + "</td><td>" + noticia.titular + "</td><td>" + noticia.fecha + "</td><td>" +
                    "<a href=javascript:void(0); onclick=editorNoticias(" + noticia.id + ");><img src=/gestHora/img/editar.png alt=editar></a>" + "</td><td>" +
                    "<a href=javascript:void(0); onclick=confirmar(" + noticia.id + "); ><img src=/gestHora/img/eliminar.png alt=eliminar</a>" + "</td></tr>";

        });

        newHTML += "</tbody></table>";

        //Se imprime en la vista
        $("#tabla").html(newHTML);

        //Se crea el filtrado de la tabla
        creaFiltrado();

        //Se activan la paginación y la ordenación
        tablePaginater.init();
        fdTableSort.init();

    });

}

function editorNoticias(id) {

    //Se recuperan los datos del controlador
    $.getJSON("/gestHora/jsp/controllers/configurarController.jsp", "tipo=obtenerNoticia&id=" + id, function(data) {

        //Se recorren los datos obtenidos del controlador y se añaden al formulario de la vista
        $.each(data, function(i, noticia) {
            $('#idEditar').val(noticia.id);
            $("#titularEditar").val(noticia.titular);
            $('#textoEditar').val(noticia.texto).blur();

        });

        //Se llama a CLEditor
        $("#textoEditar").cleditor({
            width: 657,
            controls: "bold italic underline strikethrough subscript superscript | size " +
                    "| color removeformat | bullets numbering | outdent " +
                    "indent | alignleft center alignright justify | undo redo | " +
                    "rule image link unlink | cut copy paste pastetext"
        });

        //Se muestra el nuevo formulario y se esconde (si existe) el antiguo
        $('#formEditarNoticia').fadeIn();
        $('#formNuevaNoticia').fadeOut();
    });

}


